﻿using FluentNHibernate.Mapping;
using FluentNHibernate.MappingModel;

namespace Neturion.Dados
{
    public class MapAgencia: ClassMap<Agencia>
    {
        public MapAgencia()
        {
            Table("agencias");
            Id(x => x.AgenciaId);
            References(x => x.Pessoa).Not.LazyLoad();
            Map(x => x.Codigo).Unique().Index("idx_Codigo");
            Map(x => x.NumeroAgencia);
            References(x => x.Gerente).Not.LazyLoad();
            References(x => x.Banco).Not.LazyLoad();
            HasMany<ContaBanco>(x => x.ListaContasBanco).Not.LazyLoad().Cascade.AllDeleteOrphan();
            Map(x => x.ObservacaoAgencia);
            Map(x => x.InicioVigenciaAgencia);
            Map(x => x.FimVigenciaAgencia);
            References(x => x.NeturionLog).Not.LazyLoad();
        }
    }
}

 